home *** CD-ROM | disk | FTP | other *** search
- program wuerfel;
-
- uses
- dos,pfcrt,pfgraph;
-
- const
- muster : fillpatterntype = ($80,$00,$08,$00,$80,$00,$08,$00);
- xyco : array[0..13] of byte =
- (30,30,15,15,15,30,15,45,45,45,45,30,45,15);
- augnr : array[1..6] of byte =
- ($1,$12,$13,$5a,$5b,$7e);
-
-
- var
- ch : char;
- sprite : array[0..90] of byte;
- lsprite : array[0..90] of byte;
- xofs,yofs,
- x,y : integer;
- z : byte;
-
- procedure Screen; external;
- {$l screen.obj}
-
- { Die Datei SCREEN.OBJ ist die mittels BINOBJ (Utility von T. Pascal)
- konvertierte Datei BILD2.APF aus dem Verzeichnis PICTURES }
-
-
- function RolB(zahl,anz : byte) : byte;
- INLINE($59/$58/$D2/$C0);
-
-
- procedure SetWuerfel(augen : byte);
- var
- i,b : byte;
- begin
- b:= augnr[augen];
- b:= rolb(b,2);
- for i:= 6 downto 0 do
- begin
- if odd(b) then
- putimage(xyco[i*2]+xofs,xyco[(i*2)+1]+yofs,sprite);
- b:= rolb(b,1);
- end;
- end;
-
- procedure DelAugen;
- var
- i : byte;
- x,y : integer;
- begin
- for i:= 6 downto 0 do
- begin
- x:= xyco[i*2]+xofs;
- y:= xyco[(i*2)+1]+yofs;
- putimage(x,y,lsprite);
- FillPattern(x,y,x+8,y+8,muster);
- end;
- end;
-
- begin
- randomize;
- xofs:= 10;
- yofs:= -2;
- initgraph;
- getimage(0,0,8,8,lsprite);
- aktf:= 1;
- circle(4,4,4);
- floodfill(4,4,1);
- aktf:= 0;
- circle(4,4,2);
- getimage(0,0,8,8,sprite);
- putimage(0,0,lsprite);
- showsobj(@screen);
- ch:= readkey;
- initgraph;
- aktf:= 1;
- x:= xofs+1;
- y:= yofs+7;
- FillPattern(x,y,x+64,y+55,muster);
- rectangle(x,y,x+64,y+55);
- SetFont(5);
- outtextxy(xofs+82,4,'The Dice');
- SetFont(1);
- outtextxy(xofs+82,45,'Weiterwuerfeln mit Taste');
- outtextxy(xofs+82,53,'ESC = Ende');
- repeat
- z:= random(6)+1;
- setwuerfel(z);
- ch:= readkey;
- delaugen;
- until ch= #27;
- closegraph;
- end.
- ə